Speculative Barriers With Transactional Memory
نویسندگان
چکیده
Transactional Memory (TM) is a synchronization model for parallel programming which provides optimistic concurrency control. Transactions can run in and are only serialized case of conflict. In this article we use hardware TM (HTM) to implement an speculative barrier (SB) replace the lock-based solution. SBs leverage HTM support elide barriers speculatively. When thread reaches SB, new xmlns:xlink="http://www.w3.org/1999/xlink">SB transaction started, keeping updates private thread, letting system detect potential conflicts. Once last corresponding speculative threads commit their changes. The main contributions work are: API implemented with extensions; procedure check speculation state between enable non-transactional codes; SB-aware conflict resolution enhancement where SB transactions stall on standard transaction; set guidelines derived from our experience using variety applications. We evaluated proposals two different architectures full-system simulator IBM Power8 server. Results show overall performance improvement over traditional barriers.
منابع مشابه
Speculative Concurrent Processing with Transactional Memory in the Actor Model
The actor model has been successfully used for scalable computing in distributed systems. Actors are objects with a local state, which can only be modified by the exchange of messages. One of the fundamental principles of actor models is to guarantee sequential message processing, which avoids typical concurrency hazards, but limits the achievable message throughput. Preserving the sequential s...
متن کاملRuLAM Project: Speculative Parallelization for Java using Software Transactional Memory∗
The era of multicore processors, capable of running multiple tasks concurrently, has arrived. Sadly, most existing software and even new applications being developed are not ready to take advantage of these new multiprocessing capabilities, and, thus, more processing cores do not translate into better performance when executing these applications. To tackle this problem, we envision the creatio...
متن کاملSpeculative Execution on Distributed and Replicated Software Transactional Memory Systems
This paper describes and evaluates SPECULA, a distributed and replicated software transactional memory system based on a certification scheme. This system tackles the negative effects of network latency, through the optimistic execution of code. Transactions are executed on a single node, in an uncoordinated fashion, and the result of their local validation is used as a prediction of the result...
متن کاملLifting the Barriers - Reducing Latencies with Transparent Transactional Memory
Synchronization in distributed systems is expensive because, in general, threads must stall to obtain a lock or to operate on volatile data. Transactional memory, on the other hand, allows speculative execution so that it can hide the latencies that are inherent to distributed systems. In this paper, we discuss how transactional memory can carry over to code that uses Java’s synchronization mea...
متن کاملDebugging with Transactional Memory
Transactional programming promises to substantially simplify the development of correct, scalable, and efficient concurrent programs. Designs for supporting transactional programming using transactional memory implemented in hardware, software, and a mixture of the two have emerged recently. To our knowledge, nobody has yet addressed issues involved with debugging programs executed using transa...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: IEEE Transactions on Computers
سال: 2022
ISSN: ['1557-9956', '2326-3814', '0018-9340']
DOI: https://doi.org/10.1109/tc.2020.3044234